home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / tchk21.arc / INCLUDE.ARC / MULTIHK.H < prev    next >
C/C++ Source or Header  |  1989-06-20  |  4KB  |  67 lines

  1. /* TCHK 2.1 - Howard Kapustein's Turbo C library        6-6-89      */
  2. /* Copyright (C) 1988,1989 Howard Kapustein.  All rights reserved.  */
  3.  
  4. /* multihk.h  -  header file for multihk.h - multitasking routines */
  5.  
  6. #ifndef MULTIHK_HEADER
  7. #define MULTIHK_HEADER  1
  8.  
  9. #include <howard.h>
  10. #include <alloc.h>              /* for size_t */
  11.  
  12. /* NOTE: most DESQ functions are really DESQview/TopView/TaskView(Omniview) */
  13.  
  14. typedef struct DESQmemory {
  15.                 int memavail;               /* memory available */
  16.                 int largestblockavail;      /* largest block available */
  17.                 int totalmem;               /* total memory */
  18.             };
  19.  
  20. #define DVERROR_BEEP    0x8000          /* make a beep */
  21. #define DVERROR_LEFT    0x2000          /* left button removes window */
  22. #define DVERROR_RIGHT   0x4000          /* right button removes window */
  23. #define DVERROR_EITHER  0x0000          /* either button removes window (also 0x6000) */
  24.  
  25.  
  26. /* function prototypes - DESQview */
  27. unsigned DESQappnum(void);              /* program number as it appears on "Switch Windows" menu */
  28. void DESQbeginc(void);                  /* DESQview begin critical region */
  29. void DESQcommonmem(struct DESQmemory *dm);  /* common memory available */
  30. void DESQconvenmem(struct DESQmemory *dm);  /* conventional memory available */
  31. unsigned DESQdisperror(char *msg, unsigned char width, unsigned char height, unsigned segment, unsigned flags); /* popup error window */
  32. void DESQendc(void);                    /* DESQview end critical region */
  33. void DESQexit(void);                    /* DESQview (Topview???) exit program */
  34. void DESQexpandedmem(struct DESQmemory *dm);/* expanded memory available */
  35. char far *DESQgetbuf(unsigned segment, unsigned *size);  /* get DESQview virtual screen info */
  36. char far *DESQgetmem(size_t size);      /* DESQview allocate "system" memory */
  37. void DESQjustify(boolean enable);       /* enable/disable automatic window justification */
  38. boolean DESQiskmouse(void);             /* using keyboard mouse ? */
  39. void DESQkmouse_on(void);               /* turn keyboard mouse on */
  40. void DESQkmouse_off(void);              /* turn keyboard mouse off */
  41. void DESQostack(void);                  /* switch to task's internal stack */
  42. void DESQpause(void);                   /* give up CPU time */
  43. char DESQpoke(char c);                      /* display character on status line */
  44. void DESQposttask(unsigned segment);    /* awaken DESQview task */
  45. void DESQpushkey(unsigned scancode);    /* put key into keyboard input stream */
  46. void DESQputmem(char far *block);       /* DESQview deallocate "system" memory */
  47. void DESQsound(int frequency, int duration);    /* Make Tone under DESQview (Topview???) */
  48. void DESQstart(unsigned segment);       /* indicated task is started up again */
  49. void DESQstop(unsigned segment);        /* indicated task no longer gets cpu time */
  50. void DESQustack(void);                  /* switch back to user's stack */
  51. unsigned int DESQversion(void);         /* get version */
  52. char far *getDESQvidbuffer(unsigned segment, unsigned offset);  /* get ptr to video buffer under DESQview */
  53. void updateDESQdisplay(unsigned n, unsigned segment, unsigned offset);  /* update display from DESQview video buffer */
  54. unsigned int DESQapilevel(unsigned char major, unsigned char minor);    /* define minimum API level required */
  55.  
  56. /* function prototypes - Double DOS */
  57. void DoubleDOSfreeCPU(byte slices);     /* gives up slices * 55ms */
  58. unsigned int DoubleDOSGetVirtual(void); /* get Double DOS virtual screen address */
  59. void DoubleDOSTaskSwitch(boolean on);   /* set Double DOS task switching on/off */
  60. boolean isDoubleDOS(void);              /* is Double DOS active */
  61. boolean isInvisible(void);              /* is this the invisible program under Double DOS */
  62.  
  63. /* function prototypes - Taskview (Omniview ?) */
  64. void TVprintc(char c, char attribute, unsigned segment);    /* display a character/attribute on screen */
  65.  
  66. #endif              /* MULTIHK_HEADER */
  67.